<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        let str = "java,Java8,java11,java17"

        // ? 表示前面的java，占位
        // = 后面表示，匹配项要以=后面的结尾才行，但是匹配到的（不包含=后面的）例如p1
        // : 后面表示，匹配项要以:后面的结尾才行，但是匹配到的（包含:后面的）例如p2
        // ! 后面表示，匹配项要以!后面的结尾(排除)，但是匹配到的 剩下的 例如p3
        
        let p1 = str.replace(/java(?=8|11|17)/gi, "$")
        let p2 = str.replace(/java(?:8|11|17)/gi, "$")
        let p3 = str.replace(/java(?!8|11|17)/gi, "$")

        console.log(p2);





    </script>
</body>

</html>